﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;

namespace Treasures
{
    public class ChipFull : ICloneable
    {
        #region Fields and Props
        
        public bool ClickedAsSelection { get; set; }

        public IndexStruct index;

        public ChipFigure Chip { get; set; }

        public bool MarkedForDeletion { get; set; }

        #endregion Fields

        #region ctors
        public ChipFull()
        {
            this.index = new IndexStruct();
            this.index.i = 0;
            this.index.j = 0; ;
            this.MarkedForDeletion = false;
            this.Chip = new ChipFigure();
        }

        public ChipFull(PointF loc, int i, int j)
            : base()
        {
            this.index = new IndexStruct();
            this.index.i = i;
            this.index.j = j; ;
        }
        public ChipFull(bool isCrystaled, Color color, PointF loc, int i, int j)
            : base()
        {
            this.index.i = i;
            this.index.j = j; ;
            this.Chip = new ChipFigure(isCrystaled, color);
        }

        public ChipFull(ChipFull obj)
        {
            this.index = obj.index;
            this.MarkedForDeletion = obj.MarkedForDeletion;
            this.Chip = (ChipFigure)obj.Chip.Clone();
        }

        #endregion

        #region public methods
        public object Clone()
        {
            return new ChipFull(this);
        }
        #endregion
    }
}
